home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Tampa Bay Amiga Group / TBAG - Tampa Bay Amiga Group's Disk of the Month #61 (1991)(Merlin's Software - Amiganuts United)(PD).zip / TBAG - Tampa Bay Amiga Group's Disk of the Month #61 (1991)(Merlin's Software - Amiganuts United)(PD).adf / Docs / TRexx.Docs < prev    next >
Text File  |  1991-10-25  |  11KB  |  288 lines

  1.                                   T R E X X
  2.  
  3.                       Video Toaster ARexx Script Writer
  4.                     (complete with an Intuition interface)
  5.  
  6.  
  7.                Copyright 1991 by Kurris (a.k.a. Keith Williams)
  8.                                      and
  9.                              Kludge Code Software
  10.             "If it's a good program, then it MUST be a Kludge!"
  11.  
  12.  
  13.                                  Version 1.0
  14.                                    8/21/91
  15.  
  16.              (Refer to TRexx_v1.XX.readme for update information)
  17.  
  18.  
  19. - The Low-Down -
  20.  
  21. This program exists because I had a need to create ARexx scripts to control my
  22. Video  Toaster,  yet  I  dreaded having to load up Cygnus Ed and painstakingly
  23. craft them each time.
  24.  
  25. It  occured  to  me  that a nice Intuition interface that looked JUST LIKE the
  26. Toaster's interface would be the optimal solution to my dilemma.
  27.  
  28. Thus TRexx was born.
  29.  
  30.  
  31. - Specifics -
  32.  
  33. Must  of  TRexx  is  pretty  straightforward:  You click on things and Toaster
  34. ARexx commands are generated.  These commands are invisible, but their English
  35. equivalent  is  displayed in a list on the left side of the screen.  This list
  36. is scrollable and editable.
  37.  
  38. To  edit  an  item, just click on it (it will turn blue) and then click on the
  39. icon that represents what you want to change the command to.
  40.  
  41. To  insert,  highlight  an item and click on "Insert." This will insert a line
  42. called  "**  CHANGE  ME  **", which can then be changed in the same fashion as
  43. just described above.
  44.  
  45. To  delete,  select any number of lines and click on "Delete." The highlighted
  46. lines will be removed.
  47.  
  48. TRexx  has  several variables that can be initialized through the TOOLTYPES of
  49. its  icon.  These variables can NOT be set in any other way, so I suggest that
  50. any diehard CLI users break down and pick up the mouse JUST THIS ONCE.
  51.  
  52. The variables are:
  53.  
  54.  
  55.             TOASTER     - the path where your Toaster directory can be found
  56.                           (ex.  "SYS:Toaster/"  No quotes, but, unless it is an
  57.                           assign, it MUST end in a "/").
  58.  
  59.             FRAMESTORE    - the path for your FrameStore directory
  60.                           (same convention as with TOASTER).
  61.  
  62.             WAIT        - The name of the Wait program that you want TRexx to
  63.                           call.  KWait is supplied.  See note below.
  64.  
  65.             USER        - The default user command.  See note below.
  66.  
  67.  
  68. You  don't HAVE to use these variables, but it makes things easier, since they
  69. allow the file requester to open in the proper directories and such.
  70.  
  71.  
  72. - Exiting The Program -
  73.  
  74. The only way to exit TRexx is to press the Esc key.  There are no menus and I
  75. didn't have room for a "Quit" gadget, so...
  76.  
  77.  
  78. - Special Notes -
  79.  
  80. The  scripts  that TRexx generates include code to start up the Switcher if it
  81. is  not  already running.  This means that all scripts should be executed from
  82. within  the  Toaster  directory (since they rely on some programs that New Tek
  83. includes with their Toaster software).
  84.  
  85. KWait  is a small program that I wrote to give acurate time delays from within
  86. an  ARexx  script.   It takes arguments in seconds (SS) or minutes and seconds
  87. (MM:SS).   If  you've  got  something  that  you  like better, then change the
  88. TOOLTYPE  variable  WAIT  to  the  name of your favourite Wait program.  Don't
  89. worry, I don't be offended (sniff).
  90.  
  91. The  USER  variable  was  included  to  account  for  things  that  I  haven't
  92. anticipated  needing  in  the near future.  It allows you to specify a Toaster
  93. ARexx  command  that  TRexx  doesn't  know  about and have it included in your
  94. scripts.   This  capability also comes in handy when loading a script that has
  95. things  in it that go beyond the scope of TRexx, since they will be read in as
  96. "USER COMMANDS," and can thus be modified.
  97.  
  98.  
  99. - Copyright Notes -
  100.  
  101. I  know,  I  know,  but  I didn't MEAN to.  Yes, I've stolen New Tek's Toaster
  102. interface  (or  at  least  a  good  portion  of it), and I'm very sorry, but I
  103. couldn't  think  of  a  better  way of implementing this program.  Since TRexx
  104. generates  scripts  that  can ONLY be used with the Toaster, then why should I
  105. (or  anyone)  be  forced to learn a new interface, just to do things that come
  106. naturally to the Toaster?
  107.  
  108. I  hope  that New Tek doesn't mind (I'm not SELLING this thing, after all).  I
  109. only  did  it  for ease of use and quick recognition of the elements involved.
  110. Don't sue me...PLEEEEEEEEEEEASE!!!
  111.  
  112. The  only thing that I've copyrighted here is the underlying code that handles
  113. silly  things  like  lists,  input handling and junk like that.  The "look and
  114. feel" is all New Tek's (and what a fine job they did, too).
  115.  
  116. This  program  has  been released by myself (the author) into the Amiga Public
  117. Domain  as  FREEWARE.  No donations or contributions are asked for or expected
  118. in  return  for  using  this  software.  This program may not be sold with any
  119. commercial  application  without  the prior written consent of both the author
  120. and New Tek, Inc.
  121.  
  122. This  copyright  notice  should  be  left intact with the distribution of this
  123. software.
  124.  
  125.  
  126. - Disclaimer -
  127.  
  128. I  didn't  do  it,  it's not my fault.  After all, I didn't hold a gun to your
  129. head and say:  "Here!  USE this software and LIKE it!!"  And, after all, it WAS
  130. free, right?
  131.  
  132.  
  133. - Contact Information -
  134.  
  135. For more information or suggestions, contact me at
  136.  
  137.             Keith Williams
  138.             517 136th  Apt. 2
  139.             Holland, MI  49424
  140.             (616)786-0740
  141.  
  142.  
  143.                              Version 1.02 Update
  144.                                    8/28/91
  145.  
  146.  
  147.  
  148. - What's new? -
  149.  
  150. Some  people  hate  the WorkBench and rely solely on the CLI.  Some people are
  151. just  the  opposite.   ARexx, by definition, is a CLI-based language, but that
  152. doesn't  stop  people  from WISHING that they could run their ARexx (and, as a
  153. result, their TRexx) scripts from the WorkBench.
  154.  
  155. Thus is born this version.
  156.  
  157. I'm  not  about  to say that this is the most elegant solution to the problem,
  158. but  if DOES work and makes things a LOT easier.  I've added a new TOOLTYPE to
  159. TRexx's icon, it is:
  160.  
  161.             ICONX=YES
  162.  
  163. If  ICONX=YES  (or ICONX=JustAboutAnything) appears in TRexx's icon's TOOLTYPE
  164. list, TRexx will create an IconX script (with icon) that will allow you to run
  165. your TRexx script from the WorkBench.
  166.  
  167. In  order  for  this to work, however, the ARexx program Rx MUST be in your C:
  168. directory  (WorkBench  programs  don't inherit a PATH so they can only look in
  169. your  C:   directory  [at least with the version of IconX that I'm using]).  I
  170. don't think that this is too much to ask (not really).
  171.  
  172. This  means  that,  with  ICONX set, TRexx will create three files:  the ARexx
  173. script  (WhatEver.rexx),  an  IconX script (WhatEver.TRexx) and the IconX icon
  174. (WhatEver.TRexx.info).   The  IconX script (WhatEver.TRexx) will contain three
  175. commands:   "CD  TOASTER_DIR", "Run RX PATH:WhatEver.rexx" and "EndCLI >NIL:."
  176. This  means  that you can drag the IconX file (WhatEver.TRexx) to any place on
  177. any  device  and  it  will STILL run your script correctly.  Of course, if you
  178. move the ARexx script (WhatEver.rexx) to some other location, the IconX script
  179. will no longer work.
  180.  
  181. One  way  to  avoid  this  is  to,  of  course, not move the ARexx script file
  182. (WhatEver.rexx).   Another  solution  is to move it by reloading it into TRexx
  183. and  resaving  it  in the new place (which will effectively create a new IconX
  184. script with the proper paths).
  185.  
  186. Oh,  the  TOASTER_DIR is derived from the TOOLTYPE TOASTER in TRexx's icon, by
  187. the way (in case you were wondering).
  188.  
  189. The  reason  for  Run'ing  Rx is because of the fact that if the Toaster isn't
  190. running at the start of the script the "TRexx-IconX" output window will not go
  191. away  until  the  Switcher  is shutdown.  By Run'ing Rx the output window goes
  192. away immediately (which is nice, since it serves no purpose).
  193.  
  194. And that just about covers it.  I HOPE that I won't have too many more changes
  195. to make, but one never really knows, does one?
  196.  
  197. -Keith
  198.  
  199.                              Version 1.03 Update
  200.                                    8/29/91
  201.  
  202.  
  203.  
  204. - What's new? -
  205.  
  206. What?  ANOTHER one?!!?  Yeah, yeah, I know, but this one was really needed,
  207. trust me.
  208.  
  209. Anyone using earlier versions of TRexx may have noticed a slight (or not so
  210. slight on a 68000 machine) delay in screen updates when selecting gadgets.  I
  211. had known that this was annoying, but didn't know just HOW annoying, until I
  212. ran TRexx on a bare bones 2000.  Yeck!  So I tweeked around a bit and was able
  213. to speed up the response time to almost nil.
  214.  
  215. I also fixed a bug that trashed the screen display when clearing scripts (it
  216. was nothing serious, but it made things look very strange).
  217.  
  218. Another TOOLTYPE has been added.  It is:
  219.  
  220.             SCRIPTS
  221.  
  222. and  is  used to define the directory where TRexx should save the scripts that
  223. it  generates (ex.  "SCRIPTS=SYS:Toaster/TRexx_Scripts/").  This option should
  224. only  be  used  if  you  are  also using the ICONX option, since ARexx scripts
  225. should  be executed from within the Toaster directory and nowhere else (ICONX,
  226. as  you  may  recall,  gives you a way to get around this).  If SCRIPTS is not
  227. set, TRexx will default to the Toaster directory.
  228.  
  229. The only other thing I changed was the file requester.  I think that a scaled
  230. down version of my file requester is all that is really needed for this
  231. program, so I put this one in instead of my full blown one (at a savings of
  232. ten whole K off of the executable).  You decide if it was really worth it.
  233.  
  234. And that's about it for this version.  Hope you like it!
  235.  
  236. -Keith
  237.                              Version 1.05 Update
  238.                                     9/3/91
  239.  
  240.  
  241.  
  242. - What's new? -
  243.  
  244. There  were too many things being done to v1.04, so I decided that this latest
  245. fix  merited  a  new  version  number  (even  though I never released v1.04 to
  246. anyone).
  247.  
  248. First off, some keyboard commands have been added.  They are:
  249.  
  250.             Space       Auto
  251.             Return      Take
  252.             [           Turn on Key on Black
  253.             ]           Turn on Key on White
  254.             O           Turn off Key mode
  255.             L           Load a TRexx Script
  256.             S           Save/Generate a TRexx Script
  257.             I           Insert
  258.             D           Delete
  259.             C           Clear
  260.             W           Wait
  261.  
  262. More may be on the way, but I doubt it (yeah, right).
  263.  
  264.  
  265. Since  its  inception,  there  has been a bug in TRexx that caused the Toaster
  266. Switcher  to  crash.   This  occurred when TRexx was called up and then exited
  267. BEFORE  the  Switcher  was run.  I searched and searched for where the problem
  268. might  be,  but  could  never  find it (and since it only happened in that one
  269. instance,  I  wasn't  overly concerned).  It didn't help matters any that this
  270. bug did NOT occur at all under KickStart 2.0.
  271.  
  272. But  today I had the Toaster lock up on exit as well as call up.  That annoyed
  273. me,  so  I  took  another look at it.  The only part of my code that I had not
  274. previously  modified  (for  testing purposes) were the Open and CloseLibrary()
  275. calls,  since  I  ASSUMED  that  they should work fine (being system calls and
  276. such).
  277.  
  278. Well,  so  much for that.  I was opening the MathBase ROM library, never using
  279. it, and then closing it.  For some reason, this seems to have been the problem
  280. (which,  I guess, explains why it never crashed under 2.0:  since 2.0 supplies
  281. a new MathBase).
  282.  
  283. Now  the program works fine, all the time, which is very reassuring to me (and
  284. should  be  to  anyone  using it).  Have fun, and I'll TRY to go more than two
  285. days without updating this stupid thing!
  286.  
  287. -Keith
  288.